use anyhow::Result;
use lumosai::prelude::*;

/// 演示内容分析功能
#[tokio::main]
async fn main() -> Result<()> {
    env_logger::init();

    println!("📄 LumosAI 内容分析演示");
    println!("{}", "=".repeat(40));

    // 创建内容分析助手
    let agent = lumosai::agent::simple(
        "gpt-3.5-turbo",
        r#"
你是一个专业的内容分析师。你的任务是：
1. 深入分析提供的文本内容
2. 提取关键信息和要点
3. 评估内容的质量和可信度
4. 提供结构化的分析报告

请用中文回答，保持分析的客观性和专业性。
"#,
    ).await?;

    // 模拟文档内容
    let documents = vec![
        ("技术文档", r#"
人工智能（AI）是计算机科学的一个分支，致力于创建能够执行通常需要人类智能的任务的系统。
AI的主要领域包括机器学习、自然语言处理、计算机视觉和机器人技术。

机器学习是AI的核心技术之一，它使计算机能够从数据中学习，而无需明确编程。
深度学习作为机器学习的一个子集，使用神经网络来模拟人脑的工作方式。

当前AI技术在多个领域都有重要应用：
- 医疗诊断：AI可以帮助医生更准确地诊断疾病
- 自动驾驶：AI技术使汽车能够自主导航
- 金融服务：AI用于风险评估和欺诈检测
- 教育：个性化学习系统提高教学效果
"#),
        ("新闻报道", r#"
最新研究显示，全球可再生能源产业正在经历快速增长。根据国际能源署的报告，
2023年可再生能源新增装机容量达到历史新高，同比增长85%。

太阳能和风能是增长最快的两个领域。太阳能发电成本在过去十年中下降了约80%，
使其成为许多地区最便宜的电力来源。风能技术也在不断改进，海上风电项目
正在全球范围内快速发展。

专家预测，到2030年，可再生能源将占全球电力供应的40%以上。
这一转变不仅有助于应对气候变化，还将创造数百万个就业机会。

然而，可再生能源的发展也面临挑战，包括储能技术的限制、电网基础设施的升级需求，
以及政策支持的不确定性。
"#),
        ("学术论文摘要", r#"
标题：区块链技术在供应链管理中的应用研究

摘要：本研究探讨了区块链技术在现代供应链管理中的应用潜力和实施挑战。
通过对15个不同行业的案例研究，我们分析了区块链如何提高供应链的透明度、
可追溯性和效率。

研究发现，区块链技术在以下方面具有显著优势：
1. 提高产品溯源能力，增强消费者信任
2. 减少中间环节，降低交易成本
3. 提高数据安全性和防篡改能力
4. 促进供应链各方的协作

然而，实施过程中也存在技术、经济和监管方面的挑战。
技术挑战包括可扩展性限制和能耗问题；经济挑战涉及高昂的初始投资成本；
监管挑战则体现在缺乏统一的行业标准。

本研究为企业在供应链中采用区块链技术提供了实用的指导框架。
"#),
    ];

    for (i, (doc_type, content)) in documents.iter().enumerate() {
        println!("\n📋 分析文档 {}: {}", i + 1, doc_type);
        println!("{}", "-".repeat(30));

        let analysis_prompt = format!(
            "请分析以下{}内容，并提供详细的分析报告：\n\n{}\n\n\
            请从以下角度进行分析：\n\
            1. 主要内容概述\n\
            2. 关键信息提取\n\
            3. 内容结构分析\n\
            4. 可信度评估\n\
            5. 实用价值评价",
            doc_type, content
        );

        match agent.chat(&analysis_prompt).await {
            Ok(analysis) => {
                println!("🔍 分析结果:");
                println!("{}", analysis);
            }
            Err(e) => {
                println!("❌ 分析失败: {}", e);
            }
        }

        if i < documents.len() - 1 {
            println!("\n{}", "=".repeat(50));
        }
    }

    // 演示比较分析
    println!("\n\n📊 比较分析演示");
    println!("{}", "=".repeat(40));

    let comparison_prompt = r#"
请比较以上三个文档（技术文档、新闻报道、学术论文摘要）的特点：

1. 内容类型和目标受众
2. 信息密度和深度
3. 可信度和权威性
4. 实用价值和应用场景

请提供一个综合的比较分析报告。
"#;

    match agent.chat(comparison_prompt).await {
        Ok(comparison) => {
            println!("📈 比较分析结果:");
            println!("{}", comparison);
        }
        Err(e) => {
            println!("❌ 比较分析失败: {}", e);
        }
    }

    println!("\n✅ 内容分析演示完成！");
    Ok(())
}
